The present invention relates generally to hardware/software communication systems of the type used to connect a personal computer (PC) to public switched telephone networks (PSTNs) for access to timeshare networks, e.g., Prodigy, Compuserve, bulletin board systems (BBS), etc., or to another PC. Such communication systems include modem or fax-modem adapters that generally are constructed around chip sets that are commercially available from different manufacturers, e.g., AT&T, Rockwell, and Phylon.
Commercially available modem adapters are characterized as either internal or external types, colloquially known as internal or external modems. In an internal modem, a modem chip set is mounted on a circuit card that is physically plugged into a PC card slot. This card slot is integral to a mother board that contains the microprocessor that controls the PC. The circuit card additionally contains circuitry for interfacing to an internal address/data/control bus within the PC that functions as the communication path with the microprocessor. This communication with the modem chip set is normally done a byte or eight bits at a time according to a defined interface protocol of the address/data/control bus. However, card slots on a PC are a limited resource. Typically, there is a maximum of eight card slots on the mother board of a PC of which some are dedicated to other functions, e.g., a video display controller, a disk controller, a serial and a parallel port interface, a sound and CD-ROM controller, etc. Thus, a card slot may not be available for all applications. Additionally, the use of a card slot requires opening the cabinet of the PC. While this task is minimal to one of ordinary skill in the art, it may be intimidating to an ordinary user who is normally not skilled in the art of personal computers. Also, some PCs, e.g., laptop computers, may have no user-accessible card slots.
In an external modem, a modem chip set and associated circuitry are placed in a housing external to the PC and interfaced either directly at a serial port connector or using a cable to serial interface circuitry that is internal to the PC. However, while most PCs have a serial port, not all PCs have a serial port available for use in interfacing to an external modem. For example, existing serial ports may be dedicated to interface to a mouse, a printer, a laptop computer, etc. Once the existing serial ports have been used, additional ones may only be added by using an additional card slot to add an interface/control card. However, as previously discussed, card slots are a limited resource and, with a laptop, none may be available at all. Also, the number of serial ports is limited based upon the original architecture of the PC. While the architecture of the PC permits up to four serial ports, standards exist for only the first two serial ports. Thus, it is commonplace to encounter hardware conflicts when attempting to expand a PC beyond these first two serial ports. Additionally, the use of a serial interface may degrade the throughput performance of a system since serial interfaces can only communicate one bit at a time.
A vast library of modem control software currently exists to interface to commercially available internal or external types of modems. Thus, it is desirable that any new system appear indistinguishable at its software interface to existing software systems.